package it.polimi.travelDreamEJB.basicproductmanagement.dto;

import it.polimi.travelDreamEJB.personalizedpacketmanagement.dto.PersonalizedPacketDTO;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import javax.validation.constraints.NotNull;

import org.hibernate.validator.constraints.NotEmpty;

public class FlightDTO {

	@NotNull
	private int id;
	
	@NotEmpty
	private String airline;

	@NotEmpty
	private String departure_airport;
	
	@NotEmpty
	private String destination_airport;

	@NotEmpty
	private String departure;

	@NotEmpty
	private String destination;
	
	@NotNull
	private Date flightDate;

	@NotNull
	private int price;
	
	private List<PersonalizedPacketDTO> departureFlightOfPersonalizedPacket;
	
	private List<PersonalizedPacketDTO> returnFlightOfPersonalizedPacket;
	
	public FlightDTO() {
		departureFlightOfPersonalizedPacket = new ArrayList<PersonalizedPacketDTO>();
		returnFlightOfPersonalizedPacket = new ArrayList<PersonalizedPacketDTO>();
	}
	
	public List<PersonalizedPacketDTO> getDepartureFlightOfPersonalizedPacket() {
		return departureFlightOfPersonalizedPacket;
	}

	public void setDepartureFlightOfPersonalizedPacket(
			List<PersonalizedPacketDTO> departureFlightOfPersonalizedPacket) {
		this.departureFlightOfPersonalizedPacket = departureFlightOfPersonalizedPacket;
	}

	public List<PersonalizedPacketDTO> getReturnFlightOfPersonalizedPacket() {
		return returnFlightOfPersonalizedPacket;
	}

	public void setReturnFlightOfPersonalizedPacket(
			List<PersonalizedPacketDTO> returnFlightOfPersonalizedPacket) {
		this.returnFlightOfPersonalizedPacket = returnFlightOfPersonalizedPacket;
	}

	public int getId() {
		return id;
	}
	
	public void setId(int id) {
		this.id = id;
	}

	public String getDestination() {
		return destination;
	}

	public void setDestination(String destination) {
		this.destination = destination;
	}

	public int getPrice() {
		return price;
	}

	public void setPrice(int price) {
		this.price = price;
	}

	public String getAirline() {
		return airline;
	}

	public void setAirline(String airline) {
		this.airline = airline;
	}

	public String getDeparture_airport() {
		return departure_airport;
	}

	public void setDeparture_airport(String departure_airport) {
		this.departure_airport = departure_airport;
	}

	public String getDeparture() {
		return departure;
	}

	public void setDeparture(String departure) {
		this.departure = departure;
	}

	public Date getFlightDate() {
		return flightDate;
	}

	public void setFlightDate(Date flightDate) {
		this.flightDate = flightDate;
	}
	
	public String getDestination_airport() {
		return destination_airport;
	}
	
	public void setDestination_airport(String destination_airport) {
		this.destination_airport = destination_airport;
	}
	
}
